Predicting References to Dynamically Allocated Objects

نویسندگان

  • Matthew L. Seidl
  • Benjamin G. Zorn
چکیده

Dynamic storage allocation has become increasingly important in many applications, in part due to the use of the object-oriented paradigm. At the same time, processor architectures are including deeper cache memory hierarchies to hide the increasing latency to main memory. In this paper, we investigate efforts to predict which heap objects will be highly referenced at the time they are allocated. Our approach uses profile-based optimization, and considers a variety of different information sources present at the time of object allocation to predict the object’s reference frequency. Our results, based on measurements of four allocation intensive programs, show that program references to heap objects are highly skewed and that our prediction methods can successfully predict the program objects that will be the most highly referenced. We show that using this technique, a large fraction of a program’s heap references can be directed at a part of the heap that is small enough to fit in the cache (e.g., 8–64 kilobytes). ∗This research supported by NSF Grant CCR-9404669 and an equipment donation from Digital Equipment Corporation.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Predicting References to Dynamically Allocated Objects University of Colorado at Boulder Predicting References to Dynamically Allocated Objects

Dynamic storage allocation has become increasingly important in many applications, in part due to the use of the object-oriented paradigm. At the same time, processor architectures are including deeper cache memory hierarchies to hide the increasing latency to main memory. In this paper, we investigate eeorts to predict which heap objects will be highly referenced at the time they are allocated...

متن کامل

On Decision Procedures for Set-Valued Fields

An important feature of object-oriented programming languages is the ability to dynamically instantiate user-defined container data structures such as lists, trees, and hash tables. Programs implement such data structures using references to dynamically allocated objects, which allows data structures to store unbounded numbers of objects, but makes reasoning about programs more difficult. Reaso...

متن کامل

Decision Procedures for Set-Valued Fields

A central feature of current object-oriented languages is the ability to dynamically instantiate user-defined container data structures such as lists, trees, and hash tables. Implementations of these data structures typically use references to dynamically allocated objects, which complicates reasoning about the resulting program. Reasoning is simplified if data structure operations are specifie...

متن کامل

Behavioral Subtyping is Equivalent to Modular Reasoning for Object-oriented Programs

Behavioral subtyping is an established idea that enables modular reasoning about behavioral properties of object-oriented programs. It requires that syntactic subtypes are behavioral refinements. It validates reasoning about a dynamically-dispatched method call, say E .m(), using the specification associated with the static type of the receiver expression E . For languages with references and m...

متن کامل

Mobile Escape Analysis for occam-pi

Escape analysis is the process of discovering boundaries of dynamically allocated objects in programming languages. For object-oriented languages such as C++ and Java, this analysis leads to an understanding of which program objects interact directly, as well as what objects hold references to other objects. Such information can be used to help verify the correctness of an implementation with r...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1997